[Amazon FSx for NetApp ONTAP] SnapMirrorを使ったSMBサーバーの切り戻し手順を整理してみた
切り替えたSMBサーバーからSnapMirrorのレプリケーション元のSMBサーバーに戻したい
こんにちは、のんピ(@non____97)です。
皆さんはAmazon FSx for NetApp ONTAPを使用していて、切り替えたSMBサーバーからSnapMirrorのレプリケーション元のSMBサーバーに戻したいなと思ったことはありますか? 私はあります。
以下記事ではSnapMirrorのレプリケーション先のSMBサーバーへの切り替え方法を紹介しました。
しばらくするとレプリケーション元のFSxNファイルシステムが復旧するでしょう。復旧後は元あった姿に戻したいものです。
ということで、今回は切り戻し(フェイルバック)方法を紹介します。
いきなりまとめ
- 事前準備
- SnapMirrorの逆再同期
- 切り戻し時
- SnapMirrorの最終同期
- 実施する場合は事前にNASクライアントからの通信を停止させ、静止点を確保する
- SnapMirrorのカットオーバー
- DNS CNAMEレコードの切り替え
- SPNの切り替え
- 逆再同期用のSnapMirror relationshipの削除
- 切り替え前の方向でSnapMirror relationshipを再同期
- SnapMirrorの最終同期
検証環境
検証環境は以下のとおりです。
先述の記事の続きから作業します。
事前準備
NACL制御解除
元々SnapMirrorの転送元だったFSxNファイルシステムであるFSxN Aが復旧したシナリオなので、FSxN Aのサブネットに関連付けしていたインバウンドルールとアウトバウンドルールどちらもDenyルールのみのNACLを解除します。
クラスターピアリングの状態を確認します。
::*> cluster peer show
Peer Cluster Name Cluster Serial Number Availability Authentication
------------------------- --------------------- -------------- --------------
FsxId0e64a4f5386f74c87 1-80-000011 Partial ok
::*> cluster peer show
Peer Cluster Name Cluster Serial Number Availability Authentication
------------------------- --------------------- -------------- --------------
FsxId0e64a4f5386f74c87 1-80-000011 Available ok
::*> cluster peer show -instance
Peer Cluster Name: FsxId0e64a4f5386f74c87
Cluster UUID: 00811e9a-6063-11ef-a92a-512f30fadf39
Remote Intercluster Addresses: 10.0.8.229, 10.0.8.62
Availability of the Remote Cluster: Available
Remote Cluster Name: FsxId0e64a4f5386f74c87
Active IP Addresses: 10.0.8.62, 10.0.8.229
Cluster Serial Number: 1-80-000011
Remote Cluster Nodes: FsxId0e64a4f5386f74c87-01,
FsxId0e64a4f5386f74c87-02
Remote Cluster Health: true
Unreachable Local Nodes: -
Operation Timeout (seconds): 60
Address Family of Relationship: ipv4
Authentication Status Administrative: use-authentication
Authentication Status Operational: ok
Timeout for RPC Connect: 10
Timeout for Update Pings: 5
Last Update Time: 10/20/2024 12:57:32
IPspace for the Relationship: Default
Proposed Setting for Encryption of Inter-Cluster Communication: -
Encryption Protocol For Inter-Cluster Communication: tls-psk
Algorithm By Which the PSK Was Derived: jpake
Partial
→Available
と状態が変化しましたね。クラスターピアリングで設定しているIPアドレスは2つあるため状態によってはPartial
になるようですね。
SMB-SERVER
にアクセスできるようになったことを確認します。
> ls "\\SMB-SERVER.corp.non-97.net\FSxN vol_ntfs\SMB share"
Directory: \\SMB-SERVER.corp.non-97.net\FSxN vol_ntfs\SMB share
Mode LastWriteTime Length Name
---- ------------- ------ ----
d----- 10/11/2024 8:39 AM .aws-datasync
d----- 10/11/2024 7:20 AM SMB share
d----- 10/14/2024 11:17 PM SMB日本語フォルダ
アクセスできましたね。
書き込みができることも確認します。
> echo test3 > "\\SMB-SERVER.corp.non-97.net\FSxN vol_ntfs\SMB share\test3.txt"
> cat "\\SMB-SERVER.corp.non-97.net\FSxN vol_ntfs\SMB share\test3.txt"
test3
問題なく書き込めます。
SnapMirror逆再同期
SnapMirrorの逆再同期を行います。
再同期は差分量によっては非常に時間がかかることが予想されます。影響度が低い時間帯に実行しましょう。
再同期の際にベースライン転送は不要ですが、再同期には時間がかかる場合があります。再同期はオフピークの時間帯に実行することを推奨します。
転送元をFSxN Bのボリューム、転送先をFSxN AのボリュームとしたSnapMirror relationshipを作成します。
::*> snapmirror show
This table is currently empty.
::*> snapmirror create -source-path svm2:vol_ntfs_dst -destination-path svm:vol_ntfs -policy MirrorAllSnapshots -schedule 5min
Operation succeeded: snapmirror create for the relationship with destination "svm:vol_ntfs".
::*> snapmirror show
Progress
Source Destination Mirror Relationship Total Last
Path Type Path State Status Progress Healthy Updated
----------- ---- ------------ ------- -------------- --------- ------- --------
svm2:vol_ntfs_dst
XDP svm:vol_ntfs Broken-off
Idle - true -
逆同期するにあたって共通Snapshotを事前に確認します。
::*> snapshot show -volume vol_ntfs
---Blocks---
Vserver Volume Snapshot Size Total% Used%
-------- -------- ------------------------------------- -------- ------ -----
svm vol_ntfs
test.2024-08-30_0648 356KB 0% 0%
test.2024-09-22_0958 34.38MB 0% 0%
snapmirror.47963cae-8ead-11ef-9c67-4983eeb189eb_2148230170.2024-10-20_083000
156KB 0% 0%
10min.2024-10-20_1110 152KB 0% 0%
.
.
(中略)
.
.
10min.2024-10-20_1300 180KB 0% 0%
15 entries were displayed.
::*> snapshot show -volume vol_ntfs_dst
---Blocks---
Vserver Volume Snapshot Size Total% Used%
-------- -------- ------------------------------------- -------- ------ -----
svm2 vol_ntfs_dst
test.2024-08-30_0648 296KB 0% 0%
test.2024-09-22_0958 36.97MB 0% 0%
10min.2024-10-20_0720 261.7MB 0% 1%
.
.
(中略)
.
.
10min.2024-10-20_0820 260KB 0% 0%
snapmirror.47963cae-8ead-11ef-9c67-4983eeb189eb_2148230170.2024-10-20_082500
280KB 0% 0%
10min.2024-10-20_0830 232KB 0% 0%
snapmirror.47963cae-8ead-11ef-9c67-4983eeb189eb_2148230170.2024-10-20_083000
486.7MB 1% 1%
12 entries were displayed.
snapmirror.47963cae-8ead-11ef-9c67-4983eeb189eb_2148230170.2024-10-20_083000
が共通のようですね。
それではsnapmirror resyncで逆再同期します。
::*> snapmirror resync -destination-path svm:vol_ntfs
Warning: All data newer than Snapshot copy snapmirror.47963cae-8ead-11ef-9c67-4983eeb189eb_2148230170.2024-10-20_083000 on volume svm:vol_ntfs will be deleted.
Do you want to continue? {y|n}: y
Operation is queued: initiate snapmirror resync to destination "svm:vol_ntfs".
::*> snapmirror show -fields source-path, destination-path, state, status, progress-last-updated, total-progress
source-path destination-path state status total-progress progress-last-updated
----------------- ---------------- ------------ ------ -------------- ---------------------
svm2:vol_ntfs_dst svm:vol_ntfs Snapmirrored Idle - -
::*> snapshot show -volume vol_ntfs
---Blocks---
Vserver Volume Snapshot Size Total% Used%
-------- -------- ------------------------------------- -------- ------ -----
svm vol_ntfs
test.2024-08-30_0648 356KB 0% 0%
test.2024-09-22_0958 34.38MB 0% 0%
snapmirror.47963cae-8ead-11ef-9c67-4983eeb189eb_2148230170.2024-10-20_083000
244.4MB 0% 1%
snapmirror.3ba0f5ee-6064-11ef-a92a-512f30fadf39_2149324094.2024-10-20_131201
144KB 0% 0%
4 entries were displayed.
::*> volume show -volume vol_ntfs -fields type, state, size, used, available, percent-used, junction-path, security-style, snapshot-policy,autosize-mode
vserver volume size state security-style junction-path available used percent-used autosize-mode type snapshot-policy
------- -------- ----- ------ -------------- ------------- --------- ------- ------------ ------------- ---- ---------------
svm vol_ntfs 256GB online ntfs /vol_ntfs 192.0GB 51.22GB 21% off DP snapshot-10min
共通スナップショットであるsnapmirror.47963cae-8ead-11ef-9c67-4983eeb189eb_2148230170.2024-10-20_083000
をベースラインとして逆再同期が実行されました。
そのため、事前にFSxN Aで書き込んだtest3.txt
は削除されているはずです。
実際に確認します。
> cat "\\SMB-SERVER.corp.non-97.net\FSxN vol_ntfs\SMB share\test3.txt"
cat : Cannot find path '\\SMB-SERVER.corp.non-97.net\FSxN vol_ntfs\SMB share\test3.txt' because it does not exist.
At line:1 char:1
+ cat "\\SMB-SERVER.corp.non-97.net\FSxN vol_ntfs\SMB share\test3.txt"
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : ObjectNotFound: (\\SMB-SERVER.co...share\test3.txt:String) [Get-Content], ItemNotFoundException
+ FullyQualifiedErrorId : PathNotFound,Microsoft.PowerShell.Commands.GetContentCommand
> ls "\\SMB-SERVER.corp.non-97.net\FSxN vol_ntfs\SMB share"
Directory: \\SMB-SERVER.corp.non-97.net\FSxN vol_ntfs\SMB share
Mode LastWriteTime Length Name
---- ------------- ------ ----
d----- 10/11/2024 8:39 AM .aws-datasync
d----- 10/11/2024 7:20 AM SMB share
d----- 10/14/2024 11:17 PM SMB日本語フォルダ
-a---- 10/20/2024 9:10 AM 14 test.txt
-a---- 10/20/2024 12:51 PM 16 test2.txt
はい、確かにtest3.txt
は削除され、FSxN Bのボリュームの内容で上書きされていますね。
ちなみに逆再同期の際にSnapMirrorの送信元と送信先に共通Snapshotが存在しない場合はSnapMirror relationshipの初期化(snapmirror initialize)を行い、ベースラインSnapshotを作成する必要があります。
ソースボリュームとデスティネーションボリュームに共通のSnapshotがなくなった場合、このコマンドは失敗し、新しい初期化が必要になります。
手順for SnapMirrorディザスタリカバリ(DR)テストとONTAPでのリバースSnapMirror - NetApp
アクセス先SMBサーバーの切り戻し
SnapMirrorのカットオーバー
実際の切り戻しプロセスの初めとして、SnapMirrorのカットオーバーします。
まずは次回以降の同期を中断します。今回は割愛しますが、FSxN BのNACLなどでユーザーのIPアドレスレンジからのSMBアクセスは拒否しておくと最終同期の整合性を保ちやすいでしょう。
::*> snapmirror quiesce -destination-path svm:vol_ntfs
Operation succeeded: snapmirror quiesce for destination "svm:vol_ntfs".
::*> snapmirror show
Progress
Source Destination Mirror Relationship Total Last
Path Type Path State Status Progress Healthy Updated
----------- ---- ------------ ------- -------------- --------- ------- --------
svm2:vol_ntfs_dst
XDP svm:vol_ntfs Snapmirrored
Quiesced - true -
::*> snapmirror show-history -max-rows-per-relationship 3 -fields start-time, end-time, result
destination-path operation-id start-time end-time result
---------------- -------------- ------------------- ------------------- -------
svm:vol_ntfs ..(中略).. 10/20/2024 13:25:27 10/20/2024 13:25:27 success
svm:vol_ntfs ..(中略).. 10/20/2024 13:25:00 10/20/2024 13:25:03 success
svm:vol_ntfs ..(中略).. 10/20/2024 13:20:00 10/20/2024 13:20:04 success
3 entries were displayed.
::*> snapshot show -volume vol_ntfs
---Blocks---
Vserver Volume Snapshot Size Total% Used%
-------- -------- ------------------------------------- -------- ------ -----
svm vol_ntfs
test.2024-08-30_0648 356KB 0% 0%
test.2024-09-22_0958 34.38MB 0% 0%
snapmirror.47963cae-8ead-11ef-9c67-4983eeb189eb_2148230170.2024-10-20_083000
244.8MB 0% 1%
snapmirror.3ba0f5ee-6064-11ef-a92a-512f30fadf39_2149324094.2024-10-20_132000
236KB 0% 0%
snapmirror.3ba0f5ee-6064-11ef-a92a-512f30fadf39_2149324094.2024-10-20_132500
144KB 0% 0%
5 entries were displayed.
::*> snapshot show -volume vol_ntfs_dst
---Blocks---
Vserver Volume Snapshot Size Total% Used%
-------- -------- ------------------------------------- -------- ------ -----
svm2 vol_ntfs_dst
test.2024-08-30_0648 296KB 0% 0%
test.2024-09-22_0958 36.97MB 0% 0%
10min.2024-10-20_0720 261.7MB 0% 1%
10min.2024-10-20_0730 296KB 0% 0%
10min.2024-10-20_0740 236KB 0% 0%
10min.2024-10-20_0750 284KB 0% 0%
10min.2024-10-20_0800 264KB 0% 0%
10min.2024-10-20_0810 280KB 0% 0%
10min.2024-10-20_0820 280KB 0% 0%
10min.2024-10-20_0830 232KB 0% 0%
snapmirror.47963cae-8ead-11ef-9c67-4983eeb189eb_2148230170.2024-10-20_083000
486.7MB 1% 1%
snapmirror.3ba0f5ee-6064-11ef-a92a-512f30fadf39_2149324094.2024-10-20_132500
152KB 0% 0%
12 entries were displayed.
SnapMirror relationshipの状態がQuiesced
になりました。以降5分間隔で実行されていたSnapMirrorは実行されなくなります。
今回は割愛しますが、本来であればここでFSxN AとFSxN BにそれぞれSMBでアクセスし、確かにボリューム内のファイルが同期されていることを最終チェックすると良いでしょう。
また、ベースラインSnapshotよりも前のSnapshotは転送されないので注意しましょう。
それでは、SnapMirrorのカットオーバーを行います。
::*> snapmirror break -destination-path svm:vol_ntfs
Operation succeeded: snapmirror break for destination "svm:vol_ntfs".
::*> snapmirror show
Progress
Source Destination Mirror Relationship Total Last
Path Type Path State Status Progress Healthy Updated
----------- ---- ------------ ------- -------------- --------- ------- --------
svm2:vol_ntfs_dst
XDP svm:vol_ntfs Broken-off
Idle - true -
::*> volume show -volume vol_ntfs -fields type, state, size, used, available, percent-used, junction-path, security-style, snapshot-policy,autosize-mode
vserver volume size state security-style junction-path available used percent-used autosize-mode type snapshot-policy
------- -------- ----- ------ -------------- ------------- --------- ------- ------------ ------------- ---- ---------------
svm vol_ntfs 256GB online ntfs /vol_ntfs 192.0GB 51.22GB 21% off RW snapshot-10min
FSxN AのボリュームがRW
になりました。
SMB-SERVER
に書き込みできるようになったか確認しましょう。
> echo test3 > "\\SMB-SERVER.corp.non-97.net\FSxN vol_ntfs\SMB share\test3.txt"
> ls "\\SMB-SERVER.corp.non-97.net\FSxN vol_ntfs\SMB share"
Directory: \\SMB-SERVER.corp.non-97.net\FSxN vol_ntfs\SMB share
Mode LastWriteTime Length Name
---- ------------- ------ ----
d----- 10/11/2024 8:39 AM .aws-datasync
d----- 10/11/2024 7:20 AM SMB share
d----- 10/14/2024 11:17 PM SMB日本語フォルダ
-a---- 10/20/2024 9:10 AM 14 test.txt
-a---- 10/20/2024 12:51 PM 16 test2.txt
-a---- 10/20/2024 1:30 PM 16 test3.txt
書き込めました。
DNS CNAMEレコードの変更
現在SMB-ALIAS
はSMB-SERVER2
のエイリアスのままです。
> ls "\\SMB-ALIAS.corp.non-97.net\FSxN vol_ntfs\SMB share"
Directory: \\SMB-ALIAS.corp.non-97.net\FSxN vol_ntfs\SMB share
Mode LastWriteTime Length Name
---- ------------- ------ ----
d----- 10/11/2024 8:39 AM .aws-datasync
d----- 10/11/2024 7:20 AM SMB share
d----- 10/14/2024 11:17 PM SMB日本語フォルダ
-a---- 10/20/2024 9:10 AM 14 test.txt
-a---- 10/20/2024 12:51 PM 16 test2.txt
CNAMEレコードの値をSMB-SERVER
に変更しましょう。
> $DnsName = "SMB-SERVER.corp.non-97.net"
> $Record = Get-DnsServerResourceRecord -ZoneName $ZoneName -Name $AliasHost -RRType CNAME
> $NewRecord = $Record.Clone()
> $NewRecord.RecordData.HostNameAlias = $DnsName
> Set-DnsServerResourceRecord -ZoneName $ZoneName -OldInputObject $Record -NewInputObject $NewRecord
> Get-DnsServerResourceRecord -ZoneName $ZoneName -Name $AliasHost -RRType CNAME
HostName RecordType Type Timestamp TimeToLive RecordData
-------- ---------- ---- --------- ---------- ----------
SMB-ALIAS CNAME 5 0 01:00:00 SMB-SERVER.corp.non-97.net.
この状態でSMB-ALIAS
にアクセスします。
> ls "\\SMB-ALIAS.corp.non-97.net\FSxN vol_ntfs\SMB share"
ls : Cannot find path '\\SMB-ALIAS.corp.non-97.net\FSxN vol_ntfs\SMB share' because it does not exist.
At line:1 char:1
+ ls "\\SMB-ALIAS.corp.non-97.net\FSxN vol_ntfs\SMB share"
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : ObjectNotFound: (\\SMB-ALIAS.cor..._ntfs\SMB share:String) [Get-ChildItem], ItemNotFoundException
+ FullyQualifiedErrorId : PathNotFound,Microsoft.PowerShell.Commands.GetChildItemCommand
はい、SPNがSMB-ALIAS
がSMB-SERVER2
のエイリアスのままであるため拒否されました。
SPNの再設定
SPNの設定変更をしましょう。
まず、SPNの削除です。
> SetSPN -T * -F -Q HOST/SMB*
Checking forest DC=corp,DC=non-97,DC=net
CN=SMB-SERVER2,OU=FSxForONTAP,DC=corp,DC=non-97,DC=net
cifs/SMB-ALIAS.corp.non-97.net
HOST/SMB-ALIAS.corp.non-97.net
HOST/SMB-ALIAS
cifs/smb-server2.corp.non-97.net
HOST/smb-server2.corp.non-97.net
HOST/SMB-SERVER2
CN=SMB-SERVER,OU=FSxForONTAP,DC=corp,DC=non-97,DC=net
cifs/smb-server.corp.non-97.net
HOST/smb-server.corp.non-97.net
HOST/SMB-SERVER
Existing SPN found!
> $FileSystemHost = (Resolve-DnsName "SMB-SERVER2.corp.non-97.net" | Where Type -eq 'A')[0].Name.Split(".")[0]
> $FSxAdComputer = (Get-AdComputer -Identity $FileSystemHost)
> Get-ADComputer $FileSystemHost -Properties msDS-AdditionalDnsHostname
DistinguishedName : CN=SMB-SERVER2,OU=FSxForONTAP,DC=corp,DC=non-97,DC=net
DNSHostName : SMB-SERVER2.CORP.NON-97.NET
Enabled : True
msDS-AdditionalDnsHostname : {SMB-ALIAS.corp.non-97.net}
Name : SMB-SERVER2
ObjectClass : computer
ObjectGUID : 29bd3909-20ed-4b10-8a97-03baa8ff4fb4
SamAccountName : SMB-SERVER2$
SID : S-1-5-21-38571244-2121234638-1230449559-1633
UserPrincipalName :
> Set-ADComputer $FileSystemHost -Clear msDS-AdditionalDnsHostname
> Get-ADComputer $FileSystemHost -Properties msDS-AdditionalDnsHostname
DistinguishedName : CN=SMB-SERVER2,OU=FSxForONTAP,DC=corp,DC=non-97,DC=net
DNSHostName : SMB-SERVER2.CORP.NON-97.NET
Enabled : True
Name : SMB-SERVER2
ObjectClass : computer
ObjectGUID : 29bd3909-20ed-4b10-8a97-03baa8ff4fb4
SamAccountName : SMB-SERVER2$
SID : S-1-5-21-38571244-2121234638-1230449559-1633
UserPrincipalName :
> SetSPN -T * -F -Q HOST/SMB*
Checking forest DC=corp,DC=non-97,DC=net
CN=SMB-SERVER,OU=FSxForONTAP,DC=corp,DC=non-97,DC=net
cifs/smb-server.corp.non-97.net
HOST/smb-server.corp.non-97.net
HOST/SMB-SERVER
CN=SMB-SERVER2,OU=FSxForONTAP,DC=corp,DC=non-97,DC=net
cifs/smb-server2.corp.non-97.net
HOST/smb-server2.corp.non-97.net
HOST/SMB-SERVER2
Existing SPN found!
削除できました。個別にSPNを削除するのではなく、コンピューターオブジェクトからmsDS-AdditionalDnsHostname
の値をクリアする方が作業量が少なく良いですね。
SMB-SERVER
に対するエイリアスとなるようにSPNの再設定を行います。
> $FileSystemHost = (Resolve-DnsName $DnsName | Where Type -eq 'A')[0].Name.Split(".")[0]
> $FSxAdComputer = (Get-AdComputer -Identity $FileSystemHost)
> Set-AdComputer -Identity $FSxAdComputer -Add @{"msDS-AdditionalDnsHostname"="$Alias"}
> SetSPN -T * -F -Q HOST/SMB*
Checking forest DC=corp,DC=non-97,DC=net
CN=SMB-SERVER,OU=FSxForONTAP,DC=corp,DC=non-97,DC=net
cifs/SMB-ALIAS.corp.non-97.net
HOST/SMB-ALIAS.corp.non-97.net
HOST/SMB-ALIAS
cifs/smb-server.corp.non-97.net
HOST/smb-server.corp.non-97.net
HOST/SMB-SERVER
CN=SMB-SERVER2,OU=FSxForONTAP,DC=corp,DC=non-97,DC=net
cifs/smb-server2.corp.non-97.net
HOST/smb-server2.corp.non-97.net
HOST/SMB-SERVER2
Existing SPN found!
SPNの再設定が完了しました。
それではSMB-ALIAS
でアクセスします。
> ls "\\SMB-ALIAS.corp.non-97.net\FSxN vol_ntfs\SMB share"
Directory: \\SMB-ALIAS.corp.non-97.net\FSxN vol_ntfs\SMB share
Mode LastWriteTime Length Name
---- ------------- ------ ----
d----- 10/11/2024 8:39 AM .aws-datasync
d----- 10/11/2024 7:20 AM SMB share
d----- 10/14/2024 11:17 PM SMB日本語フォルダ
-a---- 10/20/2024 9:10 AM 14 test.txt
-a---- 10/20/2024 12:51 PM 16 test2.txt
-a---- 10/20/2024 1:30 PM 16 test3.txt
正常にアクセスできました。
SMB-SERVER
に対して書き込んだtest3.txt
も表示されていることから、確かにSMB-ALIAS
はSMB-SERVER
のエイリアスであることが分かります。
セッションを確認すると、確かにKerberos認証であることが分かります。
::*> cifs session show -fields windows-user, address, auth-mechanism, shares, protocol-version, smb-encryption-status
node vserver session-id connection-id address auth-mechanism windows-user shares protocol-version smb-encryption-status
------------------------- ------- ------------------ ------------- ---------- -------------- ------------------ ------ ---------------- ---------------------
FsxId0e64a4f5386f74c87-01 svm 719450040472436898 239866928 10.0.0.139 Kerberos CORP\Administrator 2 SMB3_1 encrypted
::*> cifs session show -instance
Vserver: svm
Node: FsxId0e64a4f5386f74c87-01
Session ID: 719450040472436899
Connection ID: 239866929
Incoming Data LIF IP Address: 10.0.8.246
Workstation IP Address: 10.0.0.139
Authentication Mechanism: Kerberos
User Authenticated as: domain-user
Windows User: CORP\Administrator
UNIX User: root
Open Shares: 1
Open Files: 0
Open Other: 0
Connected Time: 2s
Idle Time: 2s
Protocol Version: SMB3_1
Continuously Available: No
Is Session Signed: false
NetBIOS Name: -
SMB Encryption Status: encrypted
Large MTU Enabled: true
Connection Count: 1
Active Shares: FSxN vol_ntfs
せっかくなのでパケットキャプチャも確認します。
Negotiate Protocol Request
のSMB2_NETNAME_NEGOTIATE_CONTEXT_ID
を確認するとSMB-ALIAS.corp.non-97.net
が表記されていますね。
また、Session Setup Request
を確認すると、Kerberos認証のチケット内のsname
(サーバー名)としてSMB-ALIAS.corp.non-97.net
が表記されていますね。
逆再同期用のSnapMirror relationshipの削除
後片付けとして逆再同期用のSnapMirror relationshipの削除をします。
削除前にFSxN AとFSxN Bのそれぞれの状態を確認します。
::*> snapmirror show
Progress
Source Destination Mirror Relationship Total Last
Path Type Path State Status Progress Healthy Updated
----------- ---- ------------ ------- -------------- --------- ------- --------
svm2:vol_ntfs_dst
XDP svm:vol_ntfs Broken-off
Idle - false -
::*> volume show -fields type, state, size, used, available, percent-used, junction-path, security-style, snapshot-policy, autosize-mode
vserver volume size state security-style junction-path available used percent-used autosize-mode type snapshot-policy
------- -------- ---- ------ -------------- ------------- --------- ------ ------------ ------------- ---- ---------------
svm svm_root 1GB online unix / 969.4MB 3.36MB 0% off RW default
svm vol1 16GB online unix /vol1 13.19GB 2.01GB 13% off RW none
svm vol_ntfs 256GB
online ntfs /vol_ntfs 192.0GB 51.23GB
21% off RW snapshot-10min
3 entries were displayed.
::*> snapshot show -volume vol_ntfs
---Blocks---
Vserver Volume Snapshot Size Total% Used%
-------- -------- ------------------------------------- -------- ------ -----
svm vol_ntfs
test.2024-08-30_0648 356KB 0% 0%
test.2024-09-22_0958 34.38MB 0% 0%
snapmirror.47963cae-8ead-11ef-9c67-4983eeb189eb_2148230170.2024-10-20_083000
244.8MB 0% 1%
snapmirror.3ba0f5ee-6064-11ef-a92a-512f30fadf39_2149324094.2024-10-20_132000
236KB 0% 0%
snapmirror.3ba0f5ee-6064-11ef-a92a-512f30fadf39_2149324094.2024-10-20_132500
248KB 0% 0%
10min.2024-10-21_0100 164KB 0% 0%
10min.2024-10-21_0110 152KB 0% 0%
10min.2024-10-21_0120 152KB 0% 0%
10min.2024-10-21_0130 152KB 0% 0%
10min.2024-10-21_0140 152KB 0% 0%
10min.2024-10-21_0150 152KB 0% 0%
10min.2024-10-21_0200 152KB 0% 0%
10min.2024-10-21_0210 152KB 0% 0%
10min.2024-10-21_0220 164KB 0% 0%
10min.2024-10-21_0230 152KB 0% 0%
10min.2024-10-21_0240 152KB 0% 0%
10min.2024-10-21_0250 148KB 0% 0%
17 entries were displayed.
::*> volume show -fields type, state, size, used, available, percent-used, junction-path, security-style, snapshot-policy, autosize-mode
vserver volume size state security-style junction-path available used percent-used autosize-mode type snapshot-policy
------- --------- ---- ------ -------------- ------------- --------- ------ ------------ ------------- ---- ---------------
svm2 svm2_root 1GB online ntfs / 971.2MB 1.60MB 0% off RW default
svm2 vol_ntfs_dst
61.44GB
online ntfs /vol_ntfs 7.13GB 51.24GB
87% grow_shrink RW none
2 entries were displayed.
::*> snapshot show -volume vol_ntfs_dst
---Blocks---
Vserver Volume Snapshot Size Total% Used%
-------- -------- ------------------------------------- -------- ------ -----
svm2 vol_ntfs_dst
test.2024-08-30_0648 296KB 0% 0%
test.2024-09-22_0958 36.97MB 0% 0%
10min.2024-10-20_0720 261.7MB 0% 1%
10min.2024-10-20_0730 296KB 0% 0%
10min.2024-10-20_0740 236KB 0% 0%
10min.2024-10-20_0750 284KB 0% 0%
10min.2024-10-20_0800 264KB 0% 0%
10min.2024-10-20_0810 280KB 0% 0%
10min.2024-10-20_0820 280KB 0% 0%
10min.2024-10-20_0830 232KB 0% 0%
snapmirror.47963cae-8ead-11ef-9c67-4983eeb189eb_2148230170.2024-10-20_083000
486.7MB 1% 1%
snapmirror.3ba0f5ee-6064-11ef-a92a-512f30fadf39_2149324094.2024-10-20_132500
164KB 0% 0%
12 entries were displayed.
FSxN AでSnapMirror relationshipを削除します。
::*> snapmirror delete -destination-path svm:vol_ntfs
Operation succeeded: snapmirror delete for the relationship with destination "svm:vol_ntfs".
::*> snapmirror show
This table is currently empty.
FSxN Bからsnapmirror releaseを実行して転送先であるFSxN Aの情報を削除します。
::*> snapmirror list-destinations
Progress
Source Destination Transfer Last Relationship
Path Type Path Status Progress Updated Id
----------- ----- ------------ ------- --------- ------------ ---------------
svm2:vol_ntfs_dst
XDP svm:vol_ntfs Idle - - 9912cebd-8ee4-11ef-accd-b31c82a68aa5
::*> snapmirror list-destinations -instance
Source Path: svm2:vol_ntfs_dst
Source Vserver: svm2
Source Volume: vol_ntfs_dst
Destination Path: svm:vol_ntfs
Destination Vserver: svm
Destination Volume: vol_ntfs
Relationship ID: 9912cebd-8ee4-11ef-accd-b31c82a68aa5
Relationship Type: XDP
Relationship Group Type: none
SnapMirror Policy Type: async-mirror
Consistency Group Item Mappings: -
Relationship Status: Idle
Transfer Progress: -
Timestamp of Last Progress Update: -
Source Volume Node Name: FsxId0cc0b3c12780c7d9f-01
Out of Sync reason: -
::*> snapmirror release -source-path svm2:vol_ntfs_dst -destination-path svm:vol_ntfs
Warning: Snapshot copies on source volume "svm2:vol_ntfs_dst" generated by SnapMirror for the purpose of mirroring to destination volume "svm:vol_ntfs" will be deleted. Once these Snapshot copies are deleted, it will not be possible to
re-establish a mirroring relationship between these two volumes unless there are other common Snapshot copies between the source and the destination volumes.
Do you want to continue? {y|n}: y
[Job 67] Job succeeded: SnapMirror Release Succeeded
::*> snapmirror list-destinations -instance
There are no entries matching your query.
これでSnapMirrorの逆再同期のお掃除が完了しました。
FSxN AからFSxN BへのSnapMirrorへの設定
FSxN Aが稼働系に切り替わったため、FSxN AからFSxN BへのSnapMirrorの転送を行います。
FSxN B側からSnapMirrorの再同期を行います。
::*> snapmirror show
Progress
Source Destination Mirror Relationship Total Last
Path Type Path State Status Progress Healthy Updated
----------- ---- ------------ ------- -------------- --------- ------- --------
svm:vol_ntfs
XDP svm2:vol_ntfs_dst
Broken-off
Idle - false -
::*> snapmirror resync -destination-path svm2:vol_ntfs_dst
Warning: All data newer than Snapshot copy snapmirror.47963cae-8ead-11ef-9c67-4983eeb189eb_2148230170.2024-10-20_083000 on volume svm2:vol_ntfs_dst will be deleted.
Do you want to continue? {y|n}: y
Operation is queued: initiate snapmirror resync to destination "svm2:vol_ntfs_dst".
::*> snapmirror show
Progress
Source Destination Mirror Relationship Total Last
Path Type Path State Status Progress Healthy Updated
----------- ---- ------------ ------- -------------- --------- ------- --------
svm:vol_ntfs
XDP svm2:vol_ntfs_dst
Snapmirrored
Transferring 1013KB false 10/21 03:02:10
::*> snapmirror show -fields source-path, destination-path, state, status, progress-last-updated, total-progress
source-path destination-path state status total-progress progress-last-updated
------------ ----------------- ------------ ---------- -------------- ---------------------
svm:vol_ntfs svm2:vol_ntfs_dst Snapmirrored Finalizing 1.04MB 10/21 03:02:25
::*> snapmirror show -fields source-path, destination-path, state, status, progress-last-updated, total-progress
source-path destination-path state status total-progress progress-last-updated
------------ ----------------- ------------ ---------- -------------- ---------------------
svm:vol_ntfs svm2:vol_ntfs_dst Snapmirrored Finalizing 1.05MB 10/21 03:02:30
::*> snapmirror show -fields source-path, destination-path, state, status, progress-last-updated, total-progress
source-path destination-path state status total-progress progress-last-updated
------------ ----------------- ------------ ---------- -------------- ---------------------
svm:vol_ntfs svm2:vol_ntfs_dst Snapmirrored Finalizing 1.05MB 10/21 03:02:31
::*> snapmirror show -fields source-path, destination-path, state, status, progress-last-updated, total-progress
source-path destination-path state status total-progress progress-last-updated
------------ ----------------- ------------ ------------ -------------- ---------------------
svm:vol_ntfs svm2:vol_ntfs_dst Snapmirrored Transferring 1.06MB 10/21 03:02:33
::*> snapmirror show -fields source-path, destination-path, state, status, progress-last-updated, total-progress
source-path destination-path state status total-progress progress-last-updated
------------ ----------------- ------------ ---------- -------------- ---------------------
svm:vol_ntfs svm2:vol_ntfs_dst Snapmirrored Finalizing 1.06MB 10/21 03:02:34
::*> snapmirror show -fields source-path, destination-path, state, status, progress-last-updated, total-progress
source-path destination-path state status total-progress progress-last-updated
------------ ----------------- ------------ ------ -------------- ---------------------
svm:vol_ntfs svm2:vol_ntfs_dst Snapmirrored Idle - -
SnapMirrorの再同期が完了しました。
FSxN BでSnapshot一覧とボリュームの状態を確認します。
::*> snapshot show -volume vol_ntfs_dst
---Blocks---
Vserver Volume Snapshot Size Total% Used%
-------- -------- ------------------------------------- -------- ------ -----
svm2 vol_ntfs_dst
test.2024-08-30_0648 296KB 0% 0%
test.2024-09-22_0958 36.97MB 0% 0%
snapmirror.47963cae-8ead-11ef-9c67-4983eeb189eb_2148230170.2024-10-20_083000
246.4MB 0% 1%
snapmirror.3ba0f5ee-6064-11ef-a92a-512f30fadf39_2149324094.2024-10-20_132000
932KB 0% 0%
snapmirror.3ba0f5ee-6064-11ef-a92a-512f30fadf39_2149324094.2024-10-20_132500
504KB 0% 0%
10min.2024-10-21_0110 224KB 0% 0%
10min.2024-10-21_0120 228KB 0% 0%
10min.2024-10-21_0130 228KB 0% 0%
10min.2024-10-21_0140 228KB 0% 0%
10min.2024-10-21_0150 228KB 0% 0%
10min.2024-10-21_0200 236KB 0% 0%
10min.2024-10-21_0210 228KB 0% 0%
10min.2024-10-21_0220 244KB 0% 0%
10min.2024-10-21_0230 224KB 0% 0%
10min.2024-10-21_0240 224KB 0% 0%
10min.2024-10-21_0250 224KB 0% 0%
10min.2024-10-21_0300 224KB 0% 0%
snapmirror.47963cae-8ead-11ef-9c67-4983eeb189eb_2148230170.2024-10-21_030207
144KB 0% 0%
18 entries were displayed.
::*> volume show -fields type, state, size, used, available, percent-used, junction-path, security-style, snapshot-policy, autosize-mode
vserver volume size state security-style junction-path available used percent-used autosize-mode type snapshot-policy
------- --------- ---- ------ -------------- ------------- --------- ------ ------------ ------------- ---- ---------------
svm2 svm2_root 1GB online ntfs / 971.2MB 1.60MB 0% off RW default
svm2 vol_ntfs_dst
61.44GB
online ntfs /vol_ntfs 6.92GB 51.45GB
88% grow_shrink DP none
2 entries were displayed.
FSxN AのSnapshotが転送され、ボリュームタイプがDP
になっていることが確認できました。
レプリケーションされているか確認するためにSMB-SERVER2
にアクセスします。
> ls "\\SMB-SERVER2.corp.non-97.net\FSxN vol_ntfs\SMB share"
Directory: \\SMB-SERVER2.corp.non-97.net\FSxN vol_ntfs\SMB share
Mode LastWriteTime Length Name
---- ------------- ------ ----
d----- 10/11/2024 8:39 AM .aws-datasync
d----- 10/11/2024 7:20 AM SMB share
d----- 10/14/2024 11:17 PM SMB日本語フォルダ
-a---- 10/20/2024 9:10 AM 14 test.txt
-a---- 10/20/2024 12:51 PM 16 test2.txt
-a---- 10/20/2024 1:30 PM 16 test3.txt
SMB-SERVER
で作成したtest3.txt
がSMB-SERVER2
に存在していますね。レプリケーションされていることが分かります。
しばらく放置してSnapMirrorの実行履歴と転送されたSnapshotを確認します。
::*> snapmirror show-history -max-rows-per-relationship 5 -fields start-time, end-time, result, transfer-size, additional-info
destination-path operation-id start-time end-time result transfer-size additional-info
----------------- ------------------------------------ ------------------- ------------------- ------- ------------- ---------------
svm2:vol_ntfs_dst d47b8322-a210-482a-a1a1-ff8cbb5921c3 10/21/2024 04:10:00 10/21/2024 04:10:06 success 6.95KB -
svm2:vol_ntfs_dst f8594cfe-82e6-4006-9a89-3df523db8b7f 10/21/2024 04:05:00 10/21/2024 04:05:04 success 3.48KB -
svm2:vol_ntfs_dst 6af8f1fa-7f8e-47a6-af6e-fc8dcc14d9fc 10/21/2024 04:00:00 10/21/2024 04:00:06 success 6.95KB -
svm2:vol_ntfs_dst cd848d0f-ccd6-42d3-b004-846650922556 10/21/2024 03:55:00 10/21/2024 03:55:04 success 3.48KB -
svm2:vol_ntfs_dst 8352bea5-4bc4-4699-b76a-50fb022ea230 10/21/2024 03:50:00 10/21/2024 03:50:05 success 6.95KB -
5 entries were displayed.
::*> snapshot show -volume vol_ntfs_dst
---Blocks---
Vserver Volume Snapshot Size Total% Used%
-------- -------- ------------------------------------- -------- ------ -----
svm2 vol_ntfs_dst
test.2024-08-30_0648 296KB 0% 0%
test.2024-09-22_0958 36.98MB 0% 0%
snapmirror.3ba0f5ee-6064-11ef-a92a-512f30fadf39_2149324094.2024-10-20_132500
504KB 0% 0%
10min.2024-10-21_0220 244KB 0% 0%
10min.2024-10-21_0230 224KB 0% 0%
10min.2024-10-21_0240 224KB 0% 0%
10min.2024-10-21_0250 224KB 0% 0%
10min.2024-10-21_0300 952KB 0% 0%
10min.2024-10-21_0310 268KB 0% 0%
10min.2024-10-21_0320 264KB 0% 0%
10min.2024-10-21_0330 268KB 0% 0%
10min.2024-10-21_0340 264KB 0% 0%
10min.2024-10-21_0350 268KB 0% 0%
10min.2024-10-21_0400 264KB 0% 0%
snapmirror.47963cae-8ead-11ef-9c67-4983eeb189eb_2148230170.2024-10-21_040500
252KB 0% 0%
10min.2024-10-21_0410 260KB 0% 0%
snapmirror.47963cae-8ead-11ef-9c67-4983eeb189eb_2148230170.2024-10-21_041000
144KB 0% 0%
17 entries were displayed.
5分ごとにSnapMirrorが実行され、転送元で10分間隔で取得されるSnapshotが転送されることが分かりますね。
切り替えだけでなく、切り戻しのプロセスも把握しておこう
Amazon FSx for NetApp ONTAPのSMBサーバーを切り戻す手順を整理してみました。
DR環境を構成するときは切り替えだけでなく、現状復帰のための切り戻しのプロセスも把握しておくことが望ましいです。
切り戻しプロセスもDRテストの中で一緒に確認しておきましょう。
この記事が誰かの助けになれば幸いです。
以上、AWS事業本部 コンサルティング部の のんピ(@non____97)でした!